Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти та науки України
Національний університет
«Львівська політехніка»
Звіт
про виконання практичної роботи №3
Мета: навчитись впорядковувати елементи рядків матриць за допомогою мови програмування Turbo Pascal.
Завдання:
Впорядкувати елементи матриці за спаданням їх значень методом вставки;
Умова:
12 46 -23 72 -5
59 7 -8 0 67
7 -8 -4 -97 -55
77 -1 -5 34 -8
0 22 27 24 24
F(a) – середнє арифметичне значення елементів у кожному стовпці над допоміжною діагоналлю матриці; F(f(a)) – середнє геометричне значення добуток f(a).
Блок-схеми:
Процедура “Wwid”
Процедура “Wywid”
Процедура “Sort”
Функція “Ser_Ar”
Функція “F”
Програма
Текст програми:
Program lab_3;
uses crt;
const
n=3;
type
rjadok=array [1..n] of real;
matrix=array [1..n] of rjadok;
var
A: matrix;
var z:real;
i:integer;
procedure wwid(var A : matrix);
var
i,j:integer;
begin
for i:=1 to n do
for j:=1 to n do
begin
Write('a[',i,'][',j,']=');
Readln(a[i,j]);
end;
end;
procedure wywid(A : matrix);
var
i,j:integer;
begin
for i:=1 to n do
begin
for j:=1 to n do
write(a[i,j]:10:3);
writeln('');
end;
readln;
end;
procedure sort(var A: matrix);
var
i,j,k:integer;
temp:real;
begin
for i:=1 to n do
begin
for j:=2 to n do
begin
temp:=A[i,j];
k:=j-1;
while((k>0) and (A[i,k]<temp)) do
begin
A[i,k+1]:=A[i,k];
k:=k-1;
end;
A[i,k+1]:=temp;
end;
end;
end;
function Ser_Ar(x:integer):real;
var
i:integer;
y:real;
begin
y:=0;
if(x<>n) then
begin
for I:=1 to (n-x) do y:=a[i,x]+y;
y:=y/(n-x);
writeln('Ser arufmetchne dlya stovpchuka ',x,'=',y:0:3);
end
else writeln('ostannij stowpchyk');
Ser_Ar:=y;
end;
function F:real;
var
temp,y:real;
i:integer;
begin
temp:=1;
for i:=1 to n-1 do
begin
y:=Ser_Ar(i);
temp:=temp*y;
end;
F:=temp;
writeln('Dobutok :');
end;
begin
clrscr;
wwid(A);
wywid(A);
sort(A);
writeln;
wywid(A);
writeln;
writeln(F:0:3);
end.
Результат виконання програми:
72 46 12 -5 -23
67 59 7 0 -8
7 -4 -8 -55 -97
77 34 -1 -5 -8
27 24 24 22 0
Ser_Ar 1 = 55.750
Ser_Ar 2 = 33.667
Ser_Ar 4 = -5.000
Dobutok: -89753.542
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!